Apache Camel ব্যবহার করে JMS (Java Message Service) ভিত্তিক একটি চ্যাট অ্যাপ্লিকেশন তৈরি করা একটি ভালো উদাহরণ যা ইন্টারঅ্যাক্টিভ মেসেজিং কিভাবে কাজ করে তা দেখায়। নিচে একটি সহজ চ্যাট অ্যাপ্লিকেশন তৈরি করার পদক্ষেপ উল্লেখ করা হলো যেখানে ব্যবহারকারীরা একটি JMS কিউ ব্যবহার করে বার্তা পাঠাতে এবং গ্রহণ করতে পারবেন।
প্রথমে, আপনার pom.xml
-এ নিম্নলিখিত ডিপেন্ডেন্সিগুলি যোগ করুন:
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jms</artifactId>
<version>3.14.0</version> <!-- Use the latest version -->
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-spring-boot-starter</artifactId>
<version>5.16.0</version>
</dependency>
JMS ব্যবহারের জন্য একটি কনফিগারেশন ক্লাস তৈরি করুন যেখানে আপনার JMS কনফিগারেশন এবং ActiveMQ সার্ভার সেট আপ করা হবে।
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.apache.activemq.ActiveMQConnectionFactory;
import javax.jms.ConnectionFactory;
@Configuration
public class JmsConfig {
@Bean
public ConnectionFactory connectionFactory() {
return new ActiveMQConnectionFactory("tcp://localhost:61616");
}
}
একটি Camel রাউট তৈরি করুন যা JMS কিউ থেকে মেসেজ পাঠাবে এবং গ্রহণ করবে। এখানে আমরা একটি chat
কিউ ব্যবহার করব।
import org.apache.camel.builder.RouteBuilder;
import org.springframework.stereotype.Component;
@Component
public class ChatRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
from("jms:queue:chat")
.log("Received message: ${body}");
}
}
একটি সিম্পল ক্লাস তৈরি করুন যা JMS কিউতে বার্তা পাঠাবে। এই ক্লাসটি ব্যবহারকারীর ইনপুট গ্রহণ করবে এবং বার্তা পাঠাবে।
import org.apache.camel.CamelContext;
import org.apache.camel.ProducerTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Scanner;
@Component
public class ChatClient {
@Autowired
private CamelContext camelContext;
public void startChat() {
ProducerTemplate template = camelContext.createProducerTemplate();
Scanner scanner = new Scanner(System.in);
System.out.println("Chat Application: Type your message and hit Enter.");
while (true) {
String message = scanner.nextLine();
template.sendBody("jms:queue:chat", message);
}
}
}
Spring Boot অ্যাপ্লিকেশন চালানোর জন্য একটি মূল ক্লাস তৈরি করুন।
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ChatApplication implements CommandLineRunner {
private final ChatClient chatClient;
public ChatApplication(ChatClient chatClient) {
this.chatClient = chatClient;
}
public static void main(String[] args) {
SpringApplication.run(ChatApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
chatClient.startChat();
}
}
আপনার লোকাল মেশিনে ActiveMQ সার্ভার চালু থাকতে হবে। আপনি ActiveMQ ডাউনলোড করে এবং এটি লোকালহোস্টে চালু করতে পারেন।
chat
কিউতে পাঠানো হবে।Apache Camel এবং JMS ব্যবহার করে একটি চ্যাট অ্যাপ্লিকেশন তৈরি করা একটি সোজা প্রক্রিয়া। এই উদাহরণটি আপনাকে একটি সিম্পল চ্যাট সিস্টেম কিভাবে তৈরি করা যায় তা দেখিয়েছে, যেখানে ব্যবহারকারীরা একটি কিউর মাধ্যমে বার্তা পাঠাতে এবং গ্রহণ করতে পারেন। এটি আরো জটিল এবং কার্যকরী চ্যাট সিস্টেম তৈরির জন্য ভিত্তি হিসেবে কাজ করতে পারে।
আরও দেখুন...